Stepper Control and EEOs over fieldbus

The AKD can control a stepper motor or emulate an encoder output using commands sent over a fieldbus.

The fieldbus controller sends position data from a trajectory generator (or feedback) over the fieldbus to the AKD, where the position is scaled and interpolated (smooths velocity) before the AKD’s EEO function creates the desired X9 output signals (step/direction, CW/CCW, or A/B quadrature). The outputs can be used to control a stepper motor, or emulate an encoder output.

The following examples show the two recommended command formats (with or without fraction), and the three available output modes. Either command format can be used with any output mode.

Whenever possible, the fractional position command format is recommended, since this ensures smooth step intervals even at low velocity. Without fractional commands, when velocity is near 1 count per fieldbus period, the pulse spacing may have more jitter than expected.

Note the EEO function will continue to increment in the correct direction as the 16-bit command integer rolls over or under, so the controller trajectory is not limited to 16-bit ranges. The maximum command velocity is generally limited by the stepper inputs or the signal drivers and receivers. In addition, the recommended command velocity should be less than 65536/4 per fieldbus period to allow the interpolator to determine direction based on consecutive commands, and allow for some variation in command timing.

Example 1 (EtherCAT): command includes fraction, step/dir stepper control

The controller will send a 32-bit PDO with 16 bits of integer position + 16 bits of fractional position; the PDO will be scaled by 65536/65536; and the EEO will generate step and direction controls.

Example 2 (EtherCAT): command integer-only, A/B quadrature stepper control

The controller will send a PDO with 16 bits of integer position (and no fractional component); the PDO will be scaled by 65536/1; and the EEO will generate A/B quadrature controls.

Example 3 (EtherCAT): command includes fraction, CW/CCW stepper control

The controller will send a 32-bit PDO with 16 bits of integer position + 16 bits of fractional position; the PDO will be scaled by 65536/65536; and the EEO will generate CW/CCW controls.